package PTA06;
import java.util.Scanner;
public class Test5_3 {
	
	 
	 public static void main(String[] args) {
		 Scanner in=new Scanner(System.in); 
		 int n=in.nextInt();
		 int a,b;
		 double[] arr = new double[n]; 
			for(int i = 0; i < arr.length;i++){     
		         arr[i] =  in.nextDouble();
		       }
			while(in.hasNext()){
				 try{
					a=Integer.parseInt(in.next());
					b=Integer.parseInt(in.next());
				 }catch(NumberFormatException e){
					 break;
				 }
					try{
					double max= ArrayUtils.findMax(arr,a, b);
					System.out.println(max);
				}catch(IllegalArgumentException e){
				    System.out.println(e);
				}	
			}
			try {
			     System.out.println(ArrayUtils.class.getDeclaredMethod("findMax", double[].class,int.class,int.class));
			} catch (Exception e1) {
			}
	} 
	}
	class ArrayUtils {
		public static double findMax(double[] arr,int begin, int end) throws IllegalArgumentException{
			if(begin<0)
				throw new IllegalArgumentException("begin:"+begin+" < 0");
			else if(end>arr.length)
				throw new IllegalArgumentException("end:"+end+" > arr.length");
			else if(begin>=end)
				throw new IllegalArgumentException("begin:"+begin+" >= "+"end:"+end);
			else{
				double max=arr[begin];
				for(int i=begin;i<end;i++){
					if(arr[i]>max)
						max=arr[i];
				}
				return max;	
			}	
		}	
	 
}
